<?php
/*
$_SERVER["QUERY_STRING"]  获取查询 语句，实例中可知，获取的是?后面的值
$_SERVER["REQUEST_URI"]   获取 http://localhost 后面的值，包括/
$_SERVER["SCRIPT_NAME"]   获取当前脚本的路径，如：index.php
$_SERVER["PHP_SELF"]      当前正在执行脚本的文件名
 * 域名解析
 */
function domain(){
	$domain_url=C('domain.d_url');
	if($domain_url==1){
		//原始url模式
		return true;
	}elseif($domain_url==3){//localhost/pc
		$url_arr=array();
		$php_file=_PHP_FILE_;//当前脚本index.php
		$request=$_SERVER['REQUEST_URI'];
		$url=str_replace(_PHP_FILE_,'',$request);
		$ext=C('domain.d_suffix');
		$url=str_replace($ext,'',$url);
		$url=rtrim($url,'/');
		$url_arr=explode('/',ltrim($url,'/'));
		$url_count=count($url_arr);
		if($url_arr[0]==''){//默认控制器
			//判断是否二级域名设置
			$sld=C('second_domain');
			if(!empty($sld)){
				$host=$_SERVER['HTTP_HOST'];
				//判断当前域名是否在二级域名中
				if(array_key_exists($host,$sld)){
					$_REQUEST['g']=$sld[$host];
				}else{
					$_REQUEST['g']=HC_GROUP;
				}
			}else{
				$_REQUEST['g']=HC_GROUP;
			}
			$_REQUEST['c']=C('domain.d_ctl');
			$_REQUEST['m']=C('domain.d_method');
		}else{
			if($url_count==1){
				$_REQUEST['g']=$url_arr[0];
				$_REQUEST['c']=C('domain.d_ctl');
				$_REQUEST['m']=C('domain.d_method');
			}elseif($url_count==2){
				$_REQUEST['g']=$url_arr[0];
				$_REQUEST['c']=$url_arr[1];
				$_REQUEST['m']=C('domain.d_method');
			}elseif($url_count>2){
				$_REQUEST['g']=$url_arr[0];
				$_REQUEST['c']=$url_arr[1];
				$_REQUEST['m']=$url_arr[2];
				for($i=3;$i<$url_count;$i+=2){
	                if($url_count-1>$i){
	                   $_GET[$url_arr[$i]]=$url_arr[$i+1];
	                }
	            }
			}
		}
		define('MODEL_URL',BASE_URL.'/'.$_REQUEST['g']);
		define('CTL_URL',MODEL_URL.'/'.$_REQUEST['c']);
		define('MOTHED_URL',CTL_URL.'/'.$_REQUEST['m']);
		return true;

	}else{
		msg_error('域名访问模式不存在');exit;
	}
}

?>
